package com.my12306.train.service;


import com.baomidou.mybatisplus.extension.service.IService;
import com.my12306.common.model.vo.PageVo;
import com.my12306.common.util.PageUtils;
import com.my12306.common.util.response.ResponseData;
import com.my12306.train.model.entity.PlanEntity;

import java.util.List;

/**
 * 路线计划
 *
 * @author ËÕÄÁÏ¦
 * @email
 * @date 2020-07-24 20:58:07
 */
public interface PlanService extends IService<PlanEntity> {
    /**
     * 分页查询列车类型
     *
     * @param pageVo
     * @return
     */
    PageUtils queryPlanPage(PageVo pageVo);

    /**
     * 分页查询的总数
     *
     * @param pageVo
     * @param logicDelete
     * @return
     */
    Integer queryPlanCount(PageVo pageVo, int logicDelete);

    /**
     * 添加一项计划
     * @param plan
     * @return
     */
    ResponseData savePlan(PlanEntity plan);

    /**
     * 修改计划
     *
     * @param plan
     */
    void updatePlanById(PlanEntity plan);

    /**
     * 批量删除计划
     *
     * @param planIds
     * @return
     */
    ResponseData deletePlanBatchByIds(List<Long> planIds);

    /**
     * 查询所有计划
     * @param logicDelete
     * @return
     */
    List<PlanEntity> queryAllPlan(int logicDelete);

    /**
     * 查询相关参数
     * @return
     * @param id
     */
    ResponseData getAddParameters(Long id);
}

